package com.qfedu.labsystem.config;

import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import springfox.documentation.builders.ApiInfoBuilder;
import springfox.documentation.builders.PathSelectors;
import springfox.documentation.builders.RequestHandlerSelectors;
import springfox.documentation.service.ApiInfo;
import springfox.documentation.service.Contact;
import springfox.documentation.spi.DocumentationType;
import springfox.documentation.spring.web.plugins.Docket;
import springfox.documentation.swagger2.annotations.EnableSwagger2;

/**
 * http://localhost:5000/swagger-ui.html#/
 *
 * @ClassName SwaggerConfig
 * @Author ykx
 * @Date 2024/4/11 17:40
 * @Version 1.0
 */
@Configuration
@EnableSwagger2
public class SwaggerConfig {

    @Bean
    public Docket getDocket() {

        ApiInfoBuilder apiInfoBuilder = new ApiInfoBuilder();
        apiInfoBuilder.title("<<智慧实验室>>后端接口说明")
                .description("此文档详细说明了锋迷商城项目后端接口规范……")
                .version("v 2.0.1")
                .contact(new Contact("亮哥", "www.liangge.com", "liangge@wang.com"));
        ApiInfo apiInfo = apiInfoBuilder.build();

        //指定生成文档中的封面信息
        return new Docket(DocumentationType.SWAGGER_2).apiInfo(apiInfo)
                .select()
                .apis(RequestHandlerSelectors.basePackage("com.qfedu.labsystem.controller"))
                .paths(PathSelectors.any()).build();
    }
}
